current_prolog_flag(argv,L),nth1(3,L,FILE), [FILE].
['symbolic.pro'].
['printmessages.pro'].
['constraints.pro'].
['rules.pro'].

current_prolog_flag(argv,L),nth1(4,L,PROTO),nth1(5,L,ROLE),initialise(PROTO,ROLE).

% print all messages
forall(lookupfail(M,IX),(print('m['),print(IX),print(']="'),print(M),print('";\n'))).
print('\n').

% print all construction paths
print('cpath={ce[x_,y_]->ce[x,y]'), forall(lookupfail(M,IX),(print('\n  ,'),print(IX),print('->BooleanMinimize['),constrpath(IX,BOOL),printbool(BOOL),print(']'))),print('};\n').

% print all local messages
print('locals={-1'), forall((lookupfail(M,IX),local(M)),(print(','),print(IX))), print('};\n').

% print all initially known messages
print('inits={-1'), kb(KB), forall((member(M1,KB),xflatten(M1,M2),member(M3,M2), lookupfail(M3,IX)),(print(','),print(IX))), print('};\n').

% print all elimination rules per message
forall(lookupfail(_,IX),printelrules(IX)),print('\n').

% print all elimination rules per message
forall(lookupfail(_,IX),printeltestpaths(IX)),print('\n').

% print all ces per message
forall(lookupfail(_,IX),printces(IX)),print('\n').

% print statistical information 
tbl(TBL),length(TBL,LEN),print('ncnd='),print(LEN),print(';\n').
current_prolog_flag(argv,L),nth1(4,L,PROTO),print('proto="'),print(PROTO),print('";\n').
current_prolog_flag(argv,L),nth1(5,L,ROLE),print('role="'),print(ROLE),print('";\n').
